#ifndef EVENTPOLLER_H
#define EVENTPOLLER_H

#include <set>
#include "EventHandler.h"
#include "Singleton.h"

class EventHandler;

class EventPoller : public Uncopyable
{
private:
	EventPoller() { }
	friend class Singleton<EventPoller>;
public:
	void Update();
	void AddHandler(EventHandler* eh);
	


private:
	typedef std::set<EventHandler*> Handlers;
	Handlers m_handlers;
};

typedef Singleton<EventPoller> TheEventPoller;

#endif